class Solution {
    public boolean isMatch(String s, String p) { 
        //动态规划来解决这个问题
        int slen = s.length();
        int plen = p.length();
        boolean[][] dp = new boolean[slen+1][plen+1];
        //如果两个都是空字符串的话，就匹配；
        dp[0][0] = true;
        //初始化第一行的数
        for(int i = 2; i<=plen ; i++){
            if(p.charAt(i-1) == '*'){
                dp[0][i] = dp[0][i-2];
            }
        }
        //如果相等的话，就等于他前一个的情况
        for (int i =1 ; i<=slen ; i++ ){
            for(int j =1 ;j<=plen ; j++){
                //因为一个是动态规划的区域，一个是取字符串第几位的元素，所以需要-1；
                //当s的元素等于p；或者p的元素为.
                if(s.charAt(i-1) == p.charAt(j-1) || p.charAt(j-1) == '.'){
                    //
                    dp[i][j] = dp[i-1][j-1];
                }
                //如果p的元素是*的话
                if(p.charAt(j-1) == '*'){
                    //如果 p-2 为true的话， dp为true。否则的话看 s和p的元素
                    if(dp[i][j-2]){
                        dp[i][j] = true ; 
                    }else
                        // s和p的元素相同，并且dp[i-1][j] 为true
                        if(s.charAt(i-1) == p.charAt(j-2) || p.charAt(j-2) =='.'){
                                dp[i][j] =dp[i-1][j];
                        }
                }
            }
        }
        return dp[slen][plen];
    }
}

public class MainClass {
    public static String stringToString(String input) {
        if (input == null) {
            return "null";
        }
        return Json.value(input).toString();
    }
    
    public static String booleanToString(boolean input) {
        return input ? "True" : "False";
    }
    
    public static void main(String[] args) throws IOException {
        BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
        String line;
        while ((line = in.readLine()) != null) {
            String s = stringToString(line);
            line = in.readLine();
            String p = stringToString(line);
            
            boolean ret = new Solution().isMatch(s, p);
            
            String out = booleanToString(ret);
            
            System.out.print(out);
        }
    }
}